import request from '@/config/axios'

// 工业ERP系统物料分类表，定义物料的多级分类体系，支持原材料、半成品、成品等分类管理 VO
export interface MaterialCategoryVO {
  id: number // 分类ID，系统自动生成的唯一标识符（主键）
  categoryCode: string // 分类编号，分类的唯一标识
  categoryName: string // 分类名称，分类的中文/英文名称
  sortOrder: number // 排序序号，同级分类的显示顺序（数值越小越靠前）
}

// 工业ERP系统物料分类表，定义物料的多级分类体系，支持原材料、半成品、成品等分类管理 API
export const MaterialCategoryApi = {
  // 查询工业ERP系统物料分类表，定义物料的多级分类体系，支持原材料、半成品、成品等分类管理分页
  getMaterialCategoryPage: async (params: any) => {
    return await request.get({ url: `/erp/material-category/page`, params })
  },

  // 查询工业ERP系统物料分类表，定义物料的多级分类体系，支持原材料、半成品、成品等分类管理详情
  getMaterialCategory: async (id: number) => {
    return await request.get({ url: `/erp/material-category/get?id=` + id })
  },

  // 新增工业ERP系统物料分类表，定义物料的多级分类体系，支持原材料、半成品、成品等分类管理
  createMaterialCategory: async (data: MaterialCategoryVO) => {
    return await request.post({ url: `/erp/material-category/create`, data })
  },

  // 修改工业ERP系统物料分类表，定义物料的多级分类体系，支持原材料、半成品、成品等分类管理
  updateMaterialCategory: async (data: MaterialCategoryVO) => {
    return await request.put({ url: `/erp/material-category/update`, data })
  },

  // 删除工业ERP系统物料分类表，定义物料的多级分类体系，支持原材料、半成品、成品等分类管理
  deleteMaterialCategory: async (id: number) => {
    return await request.delete({ url: `/erp/material-category/delete?id=` + id })
  },

  // 导出工业ERP系统物料分类表，定义物料的多级分类体系，支持原材料、半成品、成品等分类管理 Excel
  exportMaterialCategory: async (params) => {
    return await request.download({ url: `/erp/material-category/export-excel`, params })
  }
}
